#include"TcpServer.hpp"
#include<memory>
#include"CommandExcute.hpp"
void Usage(std::string proc)
{
    std::cout<<"Usage:\n\t" <<proc << " local_port\n"<<std::endl;
}
int main(int argc , char* argv[])
{
    if( argc != 2)
    {
        Usage(argv[0]);
        return 1;
    }
    DisableFile();
    uint16_t port = std::stoi(argv[1]);
    Command cmd("./safe.txt");

    
    func_t comExec = std::bind(&Command::Excute,&cmd,std::placeholders::_1);
    std::unique_ptr<TcpServer> tsvr = std::make_unique<TcpServer>(port,comExec);
    tsvr->InitServer();
    tsvr->Loop();
    return 0;
}